{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 阶段八模块二作业"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "使用K-Means对请客户进行分群\n",
    "\n",
    "数据介绍（Wholesale customers data.csv ）：\n",
    "\n",
    "FRESH：新鲜商品年度支出\n",
    "\n",
    "MILK：牛奶商品年度支出\n",
    "\n",
    "GROCERY:杂货商品年度支出\n",
    "\n",
    "FROZEN:冷冻品年度支出\n",
    "\n",
    "DETERGENTS_PAPER: 清洁剂和纸制品的年度支出（百万美元）（连续）\n",
    "\n",
    "DELICATESSEN: 熟食产品年度支出（百万美元）\n",
    "\n",
    "CHANNEL: 销售渠道，horeca（酒店/餐厅/咖啡厅）或Retail（零售渠道8) ；horeca取1，Retail取2\n",
    "\n",
    "REGION:销售地区，Lison, Oporto or Other；Lison取1，Oporto取2，Other取3"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 请根据（作业二任务要求 .html）进行操作"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 导入数据"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 请补全代码（10分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 615,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Channel</th>\n",
       "      <th>Region</th>\n",
       "      <th>Fresh</th>\n",
       "      <th>Milk</th>\n",
       "      <th>Grocery</th>\n",
       "      <th>Frozen</th>\n",
       "      <th>Detergents_Paper</th>\n",
       "      <th>Delicassen</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>12669</td>\n",
       "      <td>9656</td>\n",
       "      <td>7561</td>\n",
       "      <td>214</td>\n",
       "      <td>2674</td>\n",
       "      <td>1338</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>7057</td>\n",
       "      <td>9810</td>\n",
       "      <td>9568</td>\n",
       "      <td>1762</td>\n",
       "      <td>3293</td>\n",
       "      <td>1776</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>6353</td>\n",
       "      <td>8808</td>\n",
       "      <td>7684</td>\n",
       "      <td>2405</td>\n",
       "      <td>3516</td>\n",
       "      <td>7844</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>13265</td>\n",
       "      <td>1196</td>\n",
       "      <td>4221</td>\n",
       "      <td>6404</td>\n",
       "      <td>507</td>\n",
       "      <td>1788</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>22615</td>\n",
       "      <td>5410</td>\n",
       "      <td>7198</td>\n",
       "      <td>3915</td>\n",
       "      <td>1777</td>\n",
       "      <td>5185</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Channel  Region  Fresh  Milk  Grocery  Frozen  Detergents_Paper  Delicassen\n",
       "0        2       3  12669  9656     7561     214              2674        1338\n",
       "1        2       3   7057  9810     9568    1762              3293        1776\n",
       "2        2       3   6353  8808     7684    2405              3516        7844\n",
       "3        1       3  13265  1196     4221    6404               507        1788\n",
       "4        2       3  22615  5410     7198    3915              1777        5185"
      ]
     },
     "execution_count": 615,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.read_csv(r\".\\Wholesale customers data.csv\")\n",
    "df.head()                 "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 查看数据缺失值---数据并没有缺失值，数据完整性比较好\n",
    "### 请补全代码（5分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 440 entries, 0 to 439\n",
      "Data columns (total 8 columns):\n",
      " #   Column            Non-Null Count  Dtype\n",
      "---  ------            --------------  -----\n",
      " 0   Channel           440 non-null    int64\n",
      " 1   Region            440 non-null    int64\n",
      " 2   Fresh             440 non-null    int64\n",
      " 3   Milk              440 non-null    int64\n",
      " 4   Grocery           440 non-null    int64\n",
      " 5   Frozen            440 non-null    int64\n",
      " 6   Detergents_Paper  440 non-null    int64\n",
      " 7   Delicassen        440 non-null    int64\n",
      "dtypes: int64(8)\n",
      "memory usage: 27.6 KB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 请补全代码（5分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Channel</th>\n",
       "      <th>Region</th>\n",
       "      <th>Fresh</th>\n",
       "      <th>Milk</th>\n",
       "      <th>Grocery</th>\n",
       "      <th>Frozen</th>\n",
       "      <th>Detergents_Paper</th>\n",
       "      <th>Delicassen</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "      <td>440.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>1.322727</td>\n",
       "      <td>2.543182</td>\n",
       "      <td>12000.297727</td>\n",
       "      <td>5796.265909</td>\n",
       "      <td>7951.277273</td>\n",
       "      <td>3071.931818</td>\n",
       "      <td>2881.493182</td>\n",
       "      <td>1524.870455</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>0.468052</td>\n",
       "      <td>0.774272</td>\n",
       "      <td>12647.328865</td>\n",
       "      <td>7380.377175</td>\n",
       "      <td>9503.162829</td>\n",
       "      <td>4854.673333</td>\n",
       "      <td>4767.854448</td>\n",
       "      <td>2820.105937</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>3.000000</td>\n",
       "      <td>55.000000</td>\n",
       "      <td>3.000000</td>\n",
       "      <td>25.000000</td>\n",
       "      <td>3.000000</td>\n",
       "      <td>3.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>2.000000</td>\n",
       "      <td>3127.750000</td>\n",
       "      <td>1533.000000</td>\n",
       "      <td>2153.000000</td>\n",
       "      <td>742.250000</td>\n",
       "      <td>256.750000</td>\n",
       "      <td>408.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>3.000000</td>\n",
       "      <td>8504.000000</td>\n",
       "      <td>3627.000000</td>\n",
       "      <td>4755.500000</td>\n",
       "      <td>1526.000000</td>\n",
       "      <td>816.500000</td>\n",
       "      <td>965.500000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>2.000000</td>\n",
       "      <td>3.000000</td>\n",
       "      <td>16933.750000</td>\n",
       "      <td>7190.250000</td>\n",
       "      <td>10655.750000</td>\n",
       "      <td>3554.250000</td>\n",
       "      <td>3922.000000</td>\n",
       "      <td>1820.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>2.000000</td>\n",
       "      <td>3.000000</td>\n",
       "      <td>112151.000000</td>\n",
       "      <td>73498.000000</td>\n",
       "      <td>92780.000000</td>\n",
       "      <td>60869.000000</td>\n",
       "      <td>40827.000000</td>\n",
       "      <td>47943.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          Channel      Region          Fresh          Milk       Grocery  \\\n",
       "count  440.000000  440.000000     440.000000    440.000000    440.000000   \n",
       "mean     1.322727    2.543182   12000.297727   5796.265909   7951.277273   \n",
       "std      0.468052    0.774272   12647.328865   7380.377175   9503.162829   \n",
       "min      1.000000    1.000000       3.000000     55.000000      3.000000   \n",
       "25%      1.000000    2.000000    3127.750000   1533.000000   2153.000000   \n",
       "50%      1.000000    3.000000    8504.000000   3627.000000   4755.500000   \n",
       "75%      2.000000    3.000000   16933.750000   7190.250000  10655.750000   \n",
       "max      2.000000    3.000000  112151.000000  73498.000000  92780.000000   \n",
       "\n",
       "             Frozen  Detergents_Paper    Delicassen  \n",
       "count    440.000000        440.000000    440.000000  \n",
       "mean    3071.931818       2881.493182   1524.870455  \n",
       "std     4854.673333       4767.854448   2820.105937  \n",
       "min       25.000000          3.000000      3.000000  \n",
       "25%      742.250000        256.750000    408.250000  \n",
       "50%     1526.000000        816.500000    965.500000  \n",
       "75%     3554.250000       3922.000000   1820.250000  \n",
       "max    60869.000000      40827.000000  47943.000000  "
      ]
     },
     "execution_count": 61,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.describe()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Fresh列到Delicassen列的数据数量级大小差别很大，在聚类前需要进行标准化"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "   - 关于标准化、归一化、Normalizer的总结"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "一、数据标准化 StandardScaler (基于特征矩阵的列，将属性值转换至服从正态分布) 标准化是依照特征矩阵的列处理数据，其通过求z-score的方法，将样本的特征值转换到同一量纲下 常用与基于正态分布的算法，比如回归"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "二、数据归一化 MinMaxScaler （区间缩放，基于最大最小值，将数据转换到0,1区间上的） 提升模型收敛速度，提升模型精度 常见用于神经网络"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "三、Normalizer （基于矩阵的行，将样本向量转换为单位向量） 其目的在于样本向量在点乘运算或其他核函数计算相似性时，拥有统一的标准 常见用于文本分类和聚类、logistic回归中也会使用，有效防止过拟合"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 数据预处理"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 在此使用Normalizer---使用方法同MinMaxScaler、StandardScaler"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.preprocessing import Normalizer,StandardScaler,MinMaxScaler"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 请补全代码（10分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[0.70833271, 0.53987376, 0.42274083, 0.01196489, 0.14950522,\n",
       "        0.07480852],\n",
       "       [0.44219826, 0.61470384, 0.59953989, 0.11040858, 0.20634248,\n",
       "        0.11128583],\n",
       "       [0.39655169, 0.5497918 , 0.47963217, 0.15011913, 0.2194673 ,\n",
       "        0.48961931],\n",
       "       ...,\n",
       "       [0.36446153, 0.38846468, 0.7585445 , 0.01096068, 0.37223685,\n",
       "        0.04682745],\n",
       "       [0.93773743, 0.1805304 , 0.20340427, 0.09459392, 0.01531   ,\n",
       "        0.19365326],\n",
       "       [0.67229603, 0.40960124, 0.60547651, 0.01567967, 0.11506466,\n",
       "        0.01254374]])"
      ]
     },
     "execution_count": 96,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_n = df.iloc[:,2:]\n",
    "df_n = Normalizer().fit_transform(df_n)\n",
    "df_n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 适用轮廓系数找到最优K"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.cluster import KMeans \n",
    "from sklearn.metrics import silhouette_score  #轮廓系数"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 请补全代码（25分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "score = []\n",
    "model = []\n",
    "n_clusters = [2,3,4,5,6]\n",
    "for i in n_clusters:\n",
    "    kmeans = KMeans(n_clusters=i,random_state=0).fit(df_n)\n",
    "    score.append(silhouette_score(df_n,kmeans.labels_))\n",
    "    model.append(kmeans)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 619,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(n_clusters,score);\n",
    "plt.axvline(pd.DataFrame(score).idxmax()[0]+2,ls=\":\")\n",
    "plt.xlabel('k')\n",
    "plt.ylabel('sore');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 建模及可视化分析"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 建模分类（3类）\n",
    "### 请补全代码（25分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 616,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Fresh</th>\n",
       "      <th>Milk</th>\n",
       "      <th>Grocery</th>\n",
       "      <th>Frozen</th>\n",
       "      <th>Detergents_Paper</th>\n",
       "      <th>Delicassen</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.575088</td>\n",
       "      <td>0.233245</td>\n",
       "      <td>0.279252</td>\n",
       "      <td>0.625425</td>\n",
       "      <td>0.053748</td>\n",
       "      <td>0.109052</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.902462</td>\n",
       "      <td>0.179160</td>\n",
       "      <td>0.229113</td>\n",
       "      <td>0.149695</td>\n",
       "      <td>0.049047</td>\n",
       "      <td>0.074455</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.254118</td>\n",
       "      <td>0.486061</td>\n",
       "      <td>0.684665</td>\n",
       "      <td>0.095721</td>\n",
       "      <td>0.271384</td>\n",
       "      <td>0.097196</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      Fresh      Milk   Grocery    Frozen  Detergents_Paper  Delicassen\n",
       "0  0.575088  0.233245  0.279252  0.625425          0.053748    0.109052\n",
       "1  0.902462  0.179160  0.229113  0.149695          0.049047    0.074455\n",
       "2  0.254118  0.486061  0.684665  0.095721          0.271384    0.097196"
      ]
     },
     "execution_count": 616,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "kmeans = KMeans(n_clusters=3,random_state=0).fit(df_n)\n",
    "data = pd.DataFrame(kmeans.cluster_centers_,columns=['Fresh','Milk','Grocery','Frozen','Detergents_Paper','Delicassen'])\n",
    "data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 绘制饼状图\n",
    "### 请补全代码（10分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 365,
   "metadata": {},
   "outputs": [],
   "source": [
    "k_label = pd.Series(kmeans.labels_)\n",
    "x = k_label.value_counts()/k_label.count()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 369,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.pie(x,labels=k_label.value_counts().index,autopct=\"%.f%%\",textprops={'size':20})\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 绘制条形图\n",
    "### 请补全代码（10分）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 613,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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k2dy9OhRIrdEeG7Oc0SjUX7yk5+wcuVKTp06xQcffMDEiRPPe929e/cyfPhwTp48SVpaGr/5zW8qPLeDBw/SsmVLdu3axd13341zjqysLObOnUs0GuXIkSPs2bOH66+/ngULFlBUVHTe5Ec4f5JkGLQyF5HQJScn89hjjzF8+HDWrFnDsmXLOHDgADk5OUSjUZ577rmSFe4TTzxxXh3Au+++y7333ktOTg4An67/lO69u/P8kuc5evgow0YPY9Hzi+h/e3+W/mkpecvzSp577NgxVq9eTadOnfjkk0/KfN3Vq1fToUMH8vPzufnmmzl9+nS55zN58mR69uxJUVERd911Fzt37mTOnDm8//77vPvuuyV1w4YN469//Stff/01GzduLHfyY+lJkmHQylxEQvePf/yDU6dO8dJLL7F48WL++c9/smvXLpKTk8+r3bp1K2vXrv1eXcOGDbnlllvo2rVrSV3zVs15+emXyf8gn4kPnhmvW/BVAZs2bGLZm8v4pugbdu3aBcCYMWOAC09WHDBgAHl5efTt25euXbtyxx13lHs+8+fPJysrq+TrevXqMXv2bBo0aMDRo0dLvn/DDTcA0LFjRwoKCsqc/NixY8fzJkmGQWEu4ql4XUp46NAhli9fTr9+/XjooYfo3bs3r7/+OldddRUAl112GUVFRQA450hNTeW22277Xt3JkyfPm7b4Ye6HPPb8Y7TveHZeScq1KfQZ0Icbs27k3d+/W/IaZU1WLP26a9euZfTo0XTt2pUePXoQjUZp06ZNoHN89tlnmT59OhkZGXTs2LHk+x9//DGpqal8+umnjBgxgr///e/ceOONjB07lvfee69k8mPpcwuDtllEJDSTJ0+mf//+PPnkkyxevJinn36aHj16kJubyzXXXAPA0KFDmTdvHl27dmXbtm1MmzatzLrS/q3jv/HLn/2ScUPGMX3SdPbs3sP4+8eT80IOo/7nKPLz8st9blmv26ZNGx588EG6detGkyZNaNWqVeDzHDhwIPfddx+DBw/m8ssvL5m1/t5779GjRw/atWtHRkYG99xzD8uXL6dXr168/PLLtGjR4iL+NS+OpiZKjaepicH4PjVx4oMT+eTjT6hbpy5169Xl33/171zb7trv1cTzpqFoNMqsWbNISUkJ5XgXOzVR2ywikhAmPTipSo9fWFjIiBEjvve91NTU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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.plot(kind='bar')\n",
    "plt.xticks(rotation=0);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
